-- 设置小批量随机的每个分类的样本数量：训练过程中，准备过程之前，动态修改 v_batch_amt
do
$$
declare
  v_batch_amt int  := 9;   -- 在此修改 v_batch_amt
begin
  update sm_sc.tb_nn_node tb_node
  set 
    node_fn_asso_value = 
      array
      [
        array[1    , 5924 , 12666, 18624, 24755, 30597, 36018, 41936, 48201, 54053],
        array[4000 , 9924 , 16666, 22624, 28755, 34597, 40018, 45936, 52201, 58053],   -- 每类别 4000 共 40000， 当做训练集
        -- array[200  , 6124 , 12866, 18824, 24955, 30797, 36218, 42136, 48401, 54253],   -- 每类别 200  共 2000， 当做训练集
        -- array[30   , 5954 , 12696, 18654, 24785, 30627, 36048, 41966, 48231, 54083],   -- 每类别 30   共 300， 当做训练集
        -- array[8    , 5932 , 12674, 18632, 24763, 30605, 36026, 41944, 48209, 54061],   -- 每类别 8    共 80， 当做训练集
        -- array[2    , 5925 , 12667, 18625, 24756, 30598, 36019, 41937, 48202, 54054],   -- 每类别 1 共 10， 当做训练集
        -- array[5923 , 12665, 18623, 24754, 30596, 36017, 41935, 48200, 54052, 60001],   -- 全部当做训练集
        array_fill(v_batch_amt, array[10])
      ]
  where node_fn_type = '00_buff_slice_rand_pick'
    and node_type = 'input_01'
    and work_no = -000000002
  ;
  commit;
end
$$
language plpgsql;


-- 参数一：work_no
-- 参数二：训练次数，改参数可在一波训练后，修改为更大次数，继续准备->执行
call sm_sc.prc_nn_prepare
(
  i_work_no             =>  -000000002  
, i_limit_train_times   =>  5              
);